package corelayer;

import java.io.DataOutput;
import java.io.IOException;

/**
 * 送受信されるパケットを表すインターフェイスです。
 * また、これを実装するクラスはunpackというスタティックなメソッドを実装し、
 * バイナリからオブジェクトへの変換をサポートして下さい
 * 
 * 細かいデータの中身はまだ未定義で、SunSPOTの詳細がわかり次第追加されます
 */
public interface IPacket {

    /**
     * パケットをバイナリに変換します
     *
     * @return 変換済みのバイナリ
     */
    void packTo(DataOutput out) throws IOException;
    
    void onArrivedAt(INode node);
}
